/*
 * Copyright 2008-2015 GuanAiHui inc. 
 */
package com.pretty.adminapp.pojo.base;

import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import org.hibernate.annotations.Type;

import javax.persistence.Column;
import javax.persistence.MappedSuperclass;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;
import java.io.Serializable;
import java.util.Date;

/**
 * BaseEntity:
 *
 * @author Dennis Ge
 */
@MappedSuperclass
public abstract class BaseEntity implements Serializable {

	private static final long serialVersionUID = 2129858301561104583L;
	@JsonIgnore
	@Column(name = "active")
	@Type(type = "org.hibernate.type.NumericBooleanType")
	protected Boolean active = true;
	@JsonIgnore
	@Column(name = "update_user_id")
	protected String updateUserId;
	@JsonIgnore
	@Column(name = "update_date")
	@Temporal(TemporalType.TIMESTAMP)
	protected Date updateDate;
	@JsonIgnore
	@Column(name = "create_user_id")
	protected String createUserId;
	@JsonIgnore
	@Column(name = "create_date")
	@Temporal(TemporalType.TIMESTAMP)
	protected Date createDate;

	public Boolean getActive() {
		return active;
	}

	public void setActive(Boolean active) {
		this.active = active;
	}

	public String getUpdateUserId() {
		return updateUserId;
	}

	public void setUpdateUserId(String updateUserId) {
		this.updateUserId = updateUserId;
	}

	public Date getUpdateDate() {
		return updateDate;
	}

	public void setUpdateDate(Date updateDate) {
		this.updateDate = updateDate;
	}

	public String getCreateUserId() {
		return createUserId;
	}

	public void setCreateUserId(String createUserId) {
		this.createUserId = createUserId;
	}

	public Date getCreateDate() {
		return createDate;
	}

	public void setCreateDate(Date createDate) {
		this.createDate = createDate;
	}

}
